3.2 linux常见符号
学习目标:
- 掌握 两种重定向符号的格式和使用场景
- 掌握 管道符的特点和使用
- 掌握 后台展示符号的意义和作用
- 掌握 信息符号的作用和使用场景
3.2.1 重定向符号
在shell脚本中有两种常见的重定向符号 > 和 >>
">" 符号 作用:
">" 表示将符号左侧的内容或者输出结果,以覆盖的方式输入到右侧文件中
查看文件内容
admin-1@ubuntu:~$ cat file.txt
nihao
使用重定向符号给文件中增加内容
admin-1@ubuntu:~$ echo "file1.txt" > file.txt
再次查看文件内容
admin-1@ubuntu:~$ cat file.txt
file1.txt
">>" 符号 作用: ">>" 表示将符号左侧的内容,以追加的方式输入到右侧文件的末尾行中 查看文件内容
admin-1@ubuntu:~$ cat file.txt
file1.txt
使用重定向符号给文件中增加内容
admin-1@ubuntu:~$ echo "file2.txt" >> file.txt
admin-1@ubuntu:~$ cat file.txt
file1.txt
file2.txt
3.2.2 管道符 |
定义: | 这个就是管道符,传递信息使用的
使用格式:
命令1 | 命令2
管道符左侧命令1执行后的结果作为输入传递给右侧的命令2使用
命令演示: 查看当前系统中的全局变量SHELL
admin-1@ubuntu:~$ env | grep SHELL
SHELL=/bin/bash
3.2.3 其他符号
- 后台展示符号 &(跟在一条命令之后,将一个命令从前台转到后台执行)
使用格式: 命令 & 使用sleep命令使终端界面阻塞4秒,使用当前进程执行
在命令之后添加 &开启一个新的进程执行,不影响当前进程的操作admin-1@ubuntu:~# sleep 4
admin-1@ubuntu:~# sleep 10 & [1] 4198 admin-1@ubuntu:~# ps aux | grep sleep root 4198 0.0 0.0 9032 808 pts/17 S 21:58 0:00 sleep 10 root 4200 0.0 0.0 15964 944 pts/17 S+ 21:58 0:00 grep --color=auto sleep
- 全部信息符号 2>&1
符号详解:
1 表示标准输出的信息
2 表示标准错误的信息
2>&1 代表所有输出的信息
符号示例
标准正确输出示例
标准错误输出示例(不存在itcast命令,会报错)cat nihao.txt 1>> zhengque
itcast 2>> errfile
- 综合演练示例
脚本内容
脚本执行效果#!/bin/bash echo '下一条错误命令' dsfsafsafdsa
1 和 2 综合演练admin-1@ubuntu:~# bash ceshi.sh 下一条错误命令 ceshi.sh: line 3: dsfsafsafdsa: command not found
全部信息演练admin-1@ubuntu:~# bash ceshi.sh 1>> ceshi-ok 2>> ceshi-err admin-1@ubuntu:~# cat ceshi-ok 下一条错误命令 admin-1@ubuntu:~# cat ceshi-err ceshi.sh: line 3: dsfsafsafdsa: command not found
admin-1@ubuntu:~# bash ceshi.sh >> ceshi-all 2>&1 admin-1@ubuntu:~# cat ceshi-all 下一条错误命令 ceshi.sh: line 3: dsfsafsafdsa: command not found
- linux系统垃圾桶
/dev/null 是linux下的一个设备文件,这个文件类似于一个垃圾桶,很多不重要的信息可以指向向其重定向
特点是:容量无限大
3.2小结:
- 掌握 两种重定向符号的格式和使用场景
- 掌握 管道符的特点和使用
- 掌握 后台展示符号的意义和作用
- 掌握 信息符号的作用和使用场景